1. Field of the Invention
This invention relates to database searching and more particularly, to a method of querying multiple Internet resident databases from a browser.
2. Description of the Prior Art
Hypertext documents are electronic documents that are typically arranged on a computer screen as text, graphic images and sound. Using a pointing device, such as a mouse, a user can choose a related screen to go to next by selecting an option with the mouse. HTML (Hypertext Markup Language) is a set of codes that are placed in text files to indicate meaning, insert images, and create links to other documents. HTML is used to publish information on the Internet that may be accessed and displayed by an Internet browser. An Internet browser is a computer program that displays hypertext on the Internet.
A Search Engine is a software program that indexes web pages so that searches may be performed using key words. A portal is a web site that has entry points to many useful places in the web.
Content: Most portals and search engines go for very broad content from xe2x80x9cAsian Culturexe2x80x9d to xe2x80x9cWedding Gownsxe2x80x9d. Database sites have no special significance over other sites, and no information is stored specifically for database sites.
Data Types: Most portals and search engines only cover the text on web pages. Altavista(trademark) has licensed a special purpose image categorization engine from Virage(trademark). WebData(trademark) is designed to handle databases on the web. Many portals do have a few often used database queries for stock info, name lookup, etc.
Categorization: Some portals organize sites into one or more categories, usually hierachically. Often this requires human interaction. Traditionally search engines did not try to fit sites into categories, but let the indexing of words sift out the sites of interest individually for each search.
Keyword Search: All portals and search engines have keyword search ability. Engines like AltaVista(trademark) use keywords to lookup in their page indexes which sites contain the words. Yahoo! looks up keywords in category names, and site descriptions (not the full text of the site).
NetCenter(trademark) lets users choose which search engine to use with a pop up menu (Javascript powered, browser side), as do several other portals. (Once you choose a search engine and click, you leave the site).
Starting-Point(trademark) does a variation on this theme by returning a new (server generated) page of keyword lookups in different search engines that the user may then choose from. From their recently introduced xe2x80x98PowerSearch Assistantxe2x80x99, one can change the keywords and search engine.
DogPile(trademark) allows users to enter a keyword once from a browser, and a server side script sends the keywords to multiple search engines, and sends all the results back to the user.
Goto.com(trademark) looks up keywords in a list of paid advertisers first, and then after that provides general search engine results through a contract with Inktomi.
AltaVista(trademark) has a facility to answer questions (from Ask Jeeves).
The WebData(trademark) search engine (www.webdata.com) maintained by ExperTelligence, Inc. lists database categories. One chooses an appropriate category to begin a search for a relevant web site. To get flight information, one would select Travel and Lodging. Choosing Travel and Lodging results in a list of titles: Airlines, Cruises, etc. Choosing Airlines brings up a page listing a number of web sites of airline databases that can be accessed for flight information, for example Delta Air Lines-schedules. Choosing any one of the many titles from the list brings up a form used to query the database chosen. This is accomplished by maintaining a database of databases in a server at the WebData(trademark) site. The WebData(trademark) database stores HTML query forms for different databases that can be accessed, and displays the appropriate form on screen when a user selects an item in a subcategory. Database forms, even in the same category, tend to use different field names for each field of the form. To get flight information for each airline, one would have to select the airline""s query form from the list and fill out the form for that airline. Each subsequent airline to be queried requires re-entering the information into the form for that airline. The problem is that all forms are different and with present technology need to be filled in separately in order to submit a query.
It is desirable to have a way to view multiple possible responses to a given kind of query submitted to a number of different databases.
What is also needed is a way to build a specific HTML form from a database of translations that translate from a xe2x80x9cUniform Field Namexe2x80x9d to the actual name or field code used by a specific database.
It is desirable to be able to generate each separate HTML form and to automatically rebuild multiple forms given a generic form so that multiple queries can be made from filling out just the one generic form.
Once the specific HTML forms have been generated, it is desirable to be able to arrange the elements on screen such that multiple queries to different databases can be made from one generic form, without having to re-enter the information into the different forms for each database.
Briefly, the invention is concerned with a method of enabling multiple and different remote Internet resident databases to be queried by using search fields filled in once in a generic HTML form. Specific search fields used to query multiple searchable remote databases are stored on the server in a database of databases. Translations from uniform field names to actual names used by a corresponding remote database search field are stored in a database on the server. Unique field indicia for the corresponding remote database are also stored in the database. Local browser software populates a specific search form peculiar to a given remote database by utilizing the translations as embodied in JavaScript code. A specific search form is associated with one of the unique FORM indicia, such that multiple remote databases are matched one-for-one with multiple unique indicia. The FORM indicia are arranged on screen such that multiple database queries from the generic form can be initiated by selecting corresponding indicia.
In accordance with an aspect of the invention, results returned from a query are displayed on screen in a target window.
In accordance with another aspect of the invention, a server-side macro generator creates JavaScript needed to submit a remote query including a specific search form contemporaneously with the selecting one of the unique indicia.
The generic HTML data input form is displayed in a first window of the Internet browser. On the browser, first indicia representing a first database and second indicia representing a second database of a number of Internet resident databases are displayed. At the browser, search data entered in the generic HTML data input form is translated into a first HTML FORM compatible with the first Internet resident database in response to a user having selected the first indicia. The first database is searched with the data entered into the generic FORM. In a second window (pane,frame) of the browser, first data returned from the first database as a result of searching the first database is displayed. At the browser, the search data entered in the generic HTML data input form is translated into a second HTML FORM compatible with the second internet resident database in response to a user having selected the second indicia. The second database is searched with the same data entered into the generic FORM. Second data returned from the second database as a result of searching the second database is displayed.
The invention has the advantage that it enables many databases to be accessed from a browser using just one standard input form that is valid across many related databases.